import { defineStore } from "pinia";
// 加上type，代表是纯类型数据
import type { CounterStore } from "./counter.d";

const useCounterStore = defineStore("counter", {
  // 存储多个数据的容器
  state: (): CounterStore => {
    // state是一个函数，必须返回对象
    return {
      count: 0,
      persons: [],
    };
  },
  // 存储只读的计算属性的容器
  getters: {
    oddOrEven(state) {
      return state.count % 2 === 0 ? "偶数" : "奇数";
    },
  },
  // 更新数据方法（发送请求和更新数据都在action中完成）
  actions: {
    // 说明action接受任意多个参数
    increment(a: number, b: number, c: number, d: number) {
      console.log(a, b, c, d);
      this.count++;
    },
    decrement() {  
      this.count--;
    },
  },
  // mutations 删除了
});

export default useCounterStore;
